// 单选框注册项类型：用于组组件与子组件通信
export type RadioRegistry = {
  value: any;
  currentChecked: boolean;
  updateChecked: (checked: boolean) => void;
};

// 单选框组上下文类型：提供给子组件的共享配置
export type RadioGroupContext = {
  name: string;
  disabled: boolean;
  size: 'sm' | 'md' | 'lg';
  fill: string;
  textColor: string;
  register: (radio: RadioRegistry) => () => void;
  onToggle: (value: any) => void;
  variant?: Variant;
  buttonStyle?: boolean;
  border?: boolean;
};

// 主题色枚举
export type Variant = 'info' | 'primary' | 'secondary' | 'success' | 'warning' | 'error';